<#assign className = table.className>
<#assign classNameLower = className?uncap_first>
package ${basepackage}.entity.${bizPackage};

<#include "/java_bean_imports.include">
import com.baomidou.mybatisplus.annotation.TableLogic;

/**
 * ${bizName}${table.sqlName}的entity对象
 *
 * @author ${authorName}
 * @version 1.0
 * @Date ${now?string('yyyy年MM月dd日 HH:mm:ss')}
 */
@Data
@TableName("${table.sqlName}")
public class ${className}Entity extends Model<${className}Entity> {

	public static final String TABLE_NAME = "${table.sqlName}";




	<@generateFields/>




	<#list table.columns as column>
<#if column.columnNameLower !='updator'
		&&	column.columnNameLower !='updatorName'
		&&	column.columnNameLower !='updateTime'
	  &&	column.columnNameLower !='id'
		&&	column.columnNameLower !='removed'
		&&	column.columnNameLower !='creator'
		&&	column.columnNameLower !='creatorName'
		&&	column.columnNameLower !='createTime'
		>
	public static final String column_${column.columnNameLower} = "${column.sqlName}";
</#if>
	</#list>



}

<#macro generateFields>
	<#list table.columns as column>
	<#if column.pk>

	@ApiModelProperty(value = "主键ID")
	@TableId(value = "id", type = IdType.AUTO)
	private ${column.javaType?substring(column.javaType?last_index_of('.') + 1)} ${column.columnNameLower};
	<#else>

	/**
	 * ${column.remarks}
	 */
	@ApiModelProperty(value = "${column.remarks}")
	private ${column.javaType?substring(column.javaType?last_index_of('.') + 1)} ${column.columnNameLower};
	</#if>
	</#list>

</#macro>

<#macro generateSeterAndGeter>
	<#list table.columns as column>
	<#if column.javaType == 'java.lang.Boolean'>
	public ${column.javaType?substring(column.javaType?last_index_of('.') + 1)} is${column.columnName}() {
		return this.${column.columnNameLower};
	}
	</#if>
	public ${column.javaType?substring(column.javaType?last_index_of('.') + 1)} get${column.columnName}() {
		return this.${column.columnNameLower};
	}

	public void set${column.columnName}(${column.javaType?substring(column.javaType?last_index_of('.') + 1)} ${column.columnNameLower}) {
		this.${column.columnNameLower} = ${column.columnNameLower};
	}

	</#list>
</#macro>

